package com.aiyige.page.my.order.model;

import com.aiyige.model.eshop.Order;

import java.util.List;

public class RequestRefund {
    String orderId;
    String refundReasonId;
    String refundReason;
    String refundDescription;
    List<String> imageUrls;
    Order orderBackup;

    public RequestRefund() {
    }

    private RequestRefund(Builder builder) {
        setOrderId(builder.orderId);
        setRefundReasonId(builder.refundReasonId);
        setRefundReason(builder.refundReason);
        setRefundDescription(builder.refundDescription);
        setImageUrls(builder.imageUrls);
        setOrderBackup(builder.orderBackup);
    }

    public static Builder newBuilder() {
        return new Builder();
    }

    public String getOrderId() {
        return orderId;
    }

    public void setOrderId(String orderId) {
        this.orderId = orderId;
    }

    public String getRefundReasonId() {
        return refundReasonId;
    }

    public void setRefundReasonId(String refundReasonId) {
        this.refundReasonId = refundReasonId;
    }

    public String getRefundReason() {
        return refundReason;
    }

    public void setRefundReason(String refundReason) {
        this.refundReason = refundReason;
    }

    public String getRefundDescription() {
        return refundDescription;
    }

    public void setRefundDescription(String refundDescription) {
        this.refundDescription = refundDescription;
    }

    public List<String> getImageUrls() {
        return imageUrls;
    }

    public void setImageUrls(List<String> imageUrls) {
        this.imageUrls = imageUrls;
    }

    public Order getOrderBackup() {
        return orderBackup;
    }

    public void setOrderBackup(Order orderBackup) {
        this.orderBackup = orderBackup;
    }

    public static final class Builder {
        private String orderId;
        private String refundReasonId;
        private String refundReason;
        private String refundDescription;
        private List<String> imageUrls;
        private Order orderBackup;

        private Builder() {
        }

        public Builder orderId(String val) {
            orderId = val;
            return this;
        }

        public Builder refundReasonId(String val) {
            refundReasonId = val;
            return this;
        }

        public Builder refundReason(String val) {
            refundReason = val;
            return this;
        }

        public Builder refundDescription(String val) {
            refundDescription = val;
            return this;
        }

        public Builder imageUrls(List<String> val) {
            imageUrls = val;
            return this;
        }

        public Builder orderBackup(Order val) {
            orderBackup = val;
            return this;
        }

        public RequestRefund build() {
            return new RequestRefund(this);
        }
    }
}
